home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Aminet 25
/
Aminet 25 (1998)(GTI - Schatztruhe)[!][Jun 1998].iso
/
Aminet
/
hard
/
drivr
/
cnetdevice.lha
/
cnetdevice
/
src
/
include
/
sanaii.i
< prev
next >
Wrap
Text File
|
1997-09-19
|
9KB
|
221 lines
; essential SANA II equates
SANA2_MAX_ADDR_BITS EQU 128
SANA2_MAX_ADDR_BYTES EQU ((SANA2_MAX_ADDR_BITS+7)/8)
STRUCTURE IOSana2Req,0
STRUCT ios2_req,io_size ; 0 standard ioreq
ULONG ios2_wireerror ; 32 wire type specific error
ULONG ios2_packettype ; 36 packet type
STRUCT ios2_srcaddr,sana2_max_addr_bytes ; 40 source address
STRUCT ios2_dstaddr,sana2_max_addr_bytes ; 56 dest address
ULONG ios2_datalength ; 72 length of packet data
APTR ios2_data ; 76 packet data (not touched by driver!)
APTR ios2_statdata ; 80 statistics data pointer
APTR ios2_buffermanagement ; 84 see SANA-II OpenDevice adoc
LABEL IOS2_SIZE
;
; equates for the IO_FLAGS field
;
SANA2IOB_RAW EQU 7 ; raw packet IO requested
SANA2IOF_RAW EQU (1<<SANA2IOB_RAW)
SANA2IOB_BCAST EQU 6 ; broadcast packet (received)
SANA2IOF_BCAST EQU (1<<SANA2IOB_BCAST)
SANA2IOB_MCAST EQU 5 ; multicast packet (received)
SANA2IOF_MCAST EQU (1<<SANA2IOB_MCAST)
SANA2IOB_QUICK EQU IOB_QUICK ; quick IO requested (0)
SANA2IOF_QUICK EQU IOF_QUICK
;
; equates for OpenDevice()
;
SANA2OPB_MINE EQU 0 ; exclusive access requested
SANA2OPF_MINE EQU (1<<SANA2OPB_MINE)
SANA2OPB_PROM EQU 1 ; promiscuous mode requested
SANA2OPF_PROM EQU (1<<SANA2OPB_PROM)
TAG_USER = $80000000
S2_Dummy EQU (TAG_USER+$B0000)
S2_COPYTOBUFF EQU S2_Dummy+1
S2_COPYFROMBUFF EQU S2_Dummy+2
S2_PACKETFILTER EQU S2_Dummy+3
STRUCTURE SANA2DEVICEQUERY,0
; Standard information
ULONG S2DQ_SIZEAVAILABLE ; 0 bytes available
ULONG S2DQ_SIZESUPPLIED ; 4 bytes supplied
ULONG S2DQ_FORMAT ; 8 this is type 0
ULONG S2DQ_DEVICELEVEL ; 12 this document is level 0
; Common information
UWORD S2DQ_ADDRFIELDSIZE ; 16 address size in bits
ULONG S2DQ_MTU ; 20 maximum packet data size
ULONG S2DQ_BPS ; 24 line rate (bits/sec)
ULONG S2DQ_HARDWARETYPE ; 28 what the wire is
; Format specific information
LABEL S2DQ_SIZE ; 32
; statistics recorded with CMD_TRACKTYPE
STRUCTURE SANA2PacketTypeStats,0
LONG s2pts_txpackets ; 0 transmitted count
LONG s2pts_rxpackets ; 4 received count
LONG s2pts_txbytes ; 8 bytes transmitted count
LONG s2pts_rxbytes ; 12 bytes received count
LONG s2pts_packetsdropped ; 16 packets dropped count
LABEL s2pts_size ; 20
; stats nodes kept in tracklist
STRUCTURE SuperS2PTStats,0
STRUCT ss2_node,mln_size ; 0 list node
LONG ss2_ptype ; 8 type of packet
STRUCT ss2_stats,s2pts_size ; 12 packet type stats
LABEL ss2_sizeof ; 32
STRUCTURE SANA2SPECIALSTATRECORD,0
ULONG S2SSR_TYPE ; 0 statistic identifier
ULONG S2SSR_COUNT ; 4 the statistic
APTR S2SSR_STRING ; 8 statistic name
LABEL S2SSR_SIZE ; 12
STRUCTURE SANA2SPECIALSTATHEADER,0
ULONG S2SSH_RECORDCOUNTMAX ; 0 room available
ULONG S2SSH_RECORDCOUNTSUPPLIED ; 4 number supplied
LABEL S2SSH_SIZE ; 8
STRUCTURE SANA2DEVICESTATS,0
ULONG S2DS_PACKETSRECEIVED ; 0 received count
ULONG S2DS_PACKETSSENT ; 4 transmitted count
ULONG S2DS_BADDATA ; 8 bad packets received
ULONG S2DS_OVERRUNS ; 12 hardware miss count
ULONG S2DS_UNUSED ; 16 currently unused field
ULONG S2DS_UNKNOWNTYPESRECEIVED ; 20 orphan count
ULONG S2DS_RECONFIGURATIONS ; 24 network reconfigurations
STRUCT S2DS_LASTSTART,TV_SIZE ; 28 time of last online
LABEL S2DS_SIZE ; 36
;
; defined SANA-II hardware types
;
S2WIRETYPE_ETHERNET EQU 1
S2WIRETYPE_IEEE802 EQU 6
S2WIRETYPE_ARCNET EQU 7
S2WIRETYPE_LOCALTALK EQU 11
S2WIRETYPE_DYLAN EQU 12
S2WIRETYPE_AMOKNET EQU 200
S2WIRETYPE_LIANA EQU 202
S2WIRETYPE_PPP EQU 253
S2WIRETYPE_SLIP EQU 254
S2WIRETYPE_CSLIP EQU 255
S2WIRETYPE_PLIP EQU 420
;============================================================
; SANA II specific Device Commands
;
; '*' = used once, '**' = used twice, ' ' = not used at all!
;
S2_START EQU (CMD_NONSTD)
S2_DEVICEQUERY EQU (S2_START+0) ; 9 *
S2_GETSTATIONADDRESS EQU (S2_START+1) ; 10 *
S2_CONFIGINTERFACE EQU (S2_START+2) ; 11 *
S2_ADDMULTICASTADDRESS EQU (S2_START+5) ; 14
S2_DELMULTICASTADDRESS EQU (S2_START+6) ; 15
S2_MULTICAST EQU (S2_START+7) ; 16
S2_BROADCAST EQU (S2_START+8) ; 17 *
S2_TRACKTYPE EQU (S2_START+9) ; 18 **
S2_UNTRACKTYPE EQU (S2_START+10) ; 19
S2_GETTYPESTATS EQU (S2_START+11) ; 20
S2_GETSPECIALSTATS EQU (S2_START+12) ; 21
S2_GETGLOBALSTATS EQU (S2_START+13) ; 22
S2_ONEVENT EQU (S2_START+14) ; 23
S2_READORPHAN EQU (S2_START+15) ; 24
S2_ONLINE EQU (S2_START+16) ; 25
S2_OFFLINE EQU (S2_START+17) ; 26
S2_END EQU (S2_START+18) ; 27
;
; defined errors for IO_ERROR
;
S2ERR_NO_ERROR EQU 0 ; peachy-keen
S2ERR_NO_RESOURCES EQU 1 ; resource allocation failure
S2ERR_BAD_ARGUMENT EQU 3 ; garbage somewhere
S2ERR_BAD_STATE EQU 4 ; inappropriate state
S2ERR_BAD_ADDRESS EQU 5 ; who?
S2ERR_MTU_EXCEEDED EQU 6 ; too much to chew
S2ERR_NOT_SUPPORTED EQU 8 ; command not supported by hardware
S2ERR_SOFTWARE EQU 9 ; software error detected
S2ERR_OUTOFSERVICE EQU 10 ; driver is offline
S2ERR_TX_FAILURE EQU 11 ; transmission attempt failed
;
; defined errors for IOS2_WIREERROR
;
S2WERR_GENERIC_ERROR EQU 0 ; no specific info available
S2WERR_NOT_CONFIGURED EQU 1 ; unit not configured
S2WERR_UNIT_ONLINE EQU 2 ; unit is currently online
S2WERR_UNIT_OFFLINE EQU 3 ; unit is currently offline
S2WERR_ALREADY_TRACKED EQU 4 ; protocol already tracked
S2WERR_NOT_TRACKED EQU 5 ; protocol not tracked
S2WERR_BUFF_ERROR EQU 6 ; buffer mgmt func returned error
S2WERR_SRC_ADDRESS EQU 7 ; source address problem
S2WERR_DST_ADDRESS EQU 8 ; destination address problem
S2WERR_BAD_BROADCAST EQU 9 ; broadcast address problem
S2WERR_BAD_MULTICAST EQU 10 ; multicast address problem
S2WERR_MULTICAST_FULL EQU 11 ; multicast address list full
S2WERR_BAD_EVENT EQU 12 ; unsupported event class
S2WERR_BAD_STATDATA EQU 13 ; statdata failed sanity check
S2WERR_IS_CONFIGURED EQU 15 ; attempt to config twice
S2WERR_NULL_POINTER EQU 16 ; null pointer detected
S2WERR_TOO_MANY_RETRIES EQU 17 ; tx failed due to too many retries
S2WERR_RCVREL_HDW_ERR EQU 18 ; driver fixable hdw error
;
; defined events
;
S2EVENT_ERROR equ 1 ; error catch all
S2EVENT_TX equ 2 ; transmitter error catch all
S2EVENT_RX equ 4 ; receiver error catch all
S2EVENT_ONLINE equ 8 ; unit is in service
S2EVENT_OFFLINE equ 16 ; unit is not in service
S2EVENT_BUFF equ 32 ; buffer mgmt function error catch all
S2EVENT_HARDWARE equ 64 ; hardware error catch all
S2EVENT_SOFTWARE equ 128 ; software error catch all
; defined ethernet special statistics
S2SS_ETHERNET_BADMULTICAST EQU ((((S2WIRETYPE_ETHERNET)&$ffff)<<16)|$0000)
S2SS_ETHERNET_RETRIES EQU ((((S2WIRETYPE_ETHERNET)&$ffff)<<16)|$0001)